DAX (Data Analysis Expressions) হল একটি শক্তিশালী ভাষা যা Power BI, PowerPivot, এবং SQL Server Analysis Services (SSAS)-এ ব্যবহৃত হয় ডেটা বিশ্লেষণ এবং কাস্টম ক্যালকুলেশন তৈরি করার জন্য। Parent-child relationships হল এমন সম্পর্ক যেখানে এক টেবিলের একটি কলাম তারই অন্য একটি কলামের উপর নির্ভরশীল থাকে, সাধারণত এটি ডেটা হায়ারার্কির মতো কাজ করে। DAX এর PATH এবং PATHITEM ফাংশনগুলি ব্যবহৃত হয় Parent-Child relationships বা hierarchical structures পরিচালনা করার জন্য, যেখানে একটি কলাম অন্য কলামের উপর নির্ভরশীল থাকে, যেমন Category এবং Sub-category।
এই প্রবন্ধে আমরা PATH এবং PATHITEM ফাংশনগুলির সাহায্যে Parent-Child relationships কীভাবে পরিচালনা করা যায়, তা বিস্তারিতভাবে আলোচনা করব।
১. PATH ফাংশন
PATH ফাংশনটি Parent-Child relationship তৈরি করতে ব্যবহৃত হয়। এটি দুটি কলামের মধ্যে সম্পর্ক তৈরি করে, যেখানে একটি কলাম parent এবং অন্যটি child হিসেবে কাজ করে। এই ফাংশনটি একটি path তৈরি করে, যেখানে প্রতিটি parent-child সম্পর্কের তথ্য একটি স্ট্রিং আকারে সংরক্ষিত থাকে।
Syntax:
PATH(<parent_column>, <child_column>)
- <parent_column>: এই কলামে parent বা মূল ডেটা থাকে।
- <child_column>: এই কলামে child বা সম্পর্কিত ডেটা থাকে।
ব্যবহার:
ধরা যাক, আপনার একটি Employee টেবিল রয়েছে, যেখানে EmployeeID হল child_column এবং ManagerID হল parent_column। আপনি যদি একজন কর্মচারীর path বের করতে চান, যেখানে সেই কর্মচারীর manager এর উপর ভিত্তি করে, তাহলে আপনি PATH ফাংশনটি ব্যবহার করতে পারেন:
Employee Path = PATH(Employee[EmployeeID], Employee[ManagerID])
এটি একটি স্ট্রিং তৈরি করবে, যা EmployeeID এবং ManagerID এর মধ্যে সম্পর্কিত path তৈরি করবে।
২. PATHITEM ফাংশন
PATHITEM ফাংশনটি PATH ফাংশনের তৈরি করা path স্ট্রিং থেকে নির্দিষ্ট একটি আইটেম বের করতে ব্যবহৃত হয়। এই ফাংশনটি একটি path স্ট্রিং থেকে নির্দিষ্ট parent-child সম্পর্ক বের করার জন্য ব্যবহৃত হয়, যেমন আপনি path থেকে কোন নির্দিষ্ট স্তরের parent বা child বের করতে চান।
Syntax:
PATHITEM(<path>, <position>, <datatype>)
- : এটি PATH ফাংশনের মাধ্যমে তৈরি করা স্ট্রিং।
- : এটি সেই স্তরের অবস্থান যা আপনি বের করতে চান (যেমন 1, 2, 3 ইত্যাদি)।
- : এটি নির্দিষ্ট করে আপনি যে ধরনের মান চান, যেমন STRING বা INTEGER।
ব্যবহার:
ধরা যাক, আপনি যদি Employee টেবিলের path থেকে manager (level 1) বের করতে চান, তাহলে আপনি PATHITEM ফাংশনটি ব্যবহার করতে পারেন:
Manager Level 1 = PATHITEM(Employee[Employee Path], 1, STRING)
এটি Employee Path থেকে প্রথম স্তরের (অর্থাৎ manager) নাম বের করবে।
৩. PATHLENGTH ফাংশন
PATHLENGTH ফাংশনটি PATH ফাংশনের মাধ্যমে তৈরি করা path স্ট্রিংটির দৈর্ঘ্য নির্ধারণ করে, অর্থাৎ কতটি parent-child সম্পর্ক একটি path তে আছে।
Syntax:
PATHLENGTH(<path>)
- : এটি PATH ফাংশনের মাধ্যমে তৈরি করা স্ট্রিং।
ব্যবহার:
যেমন, আপনি যদি Employee Path এর দৈর্ঘ্য বের করতে চান:
Employee Path Length = PATHLENGTH(Employee[Employee Path])
এটি Employee টেবিলের Employee Path থেকে কতগুলি স্তর (level) আছে তা রিটার্ন করবে।
৪. কাস্টম Parent-Child Relationship তৈরি করা
PATH এবং PATHITEM ফাংশনগুলি ব্যবহৃত হয় যখন আপনি একটি parent-child relationship তৈরি করতে চান এবং সেটির মধ্যে বিভিন্ন স্তরের মান বের করতে চান। নিচে একটি উদাহরণ দেয়া হলো যেখানে Employee টেবিলের EmployeeID এবং ManagerID ব্যবহার করে Parent-Child relationship তৈরি করা হয়েছে এবং এরপর স্তরের ভিত্তিতে Manager বা Employee তথ্য বের করা হয়েছে।
কাস্টম উদাহরণ:
ধরা যাক, আমাদের একটি Employee টেবিল রয়েছে, যেখানে EmployeeID এবং ManagerID রয়েছে। আমরা যদি প্রতিটি কর্মচারীর manager's name বের করতে চাই, তাহলে প্রথমে PATH ফাংশনটি ব্যবহার করে path তৈরি করতে হবে, এবং তারপর PATHITEM ফাংশনটি ব্যবহার করে প্রথম স্তরের Manager বের করা হবে।
Employee Path = PATH(Employee[EmployeeID], Employee[ManagerID])
Manager Level 1 = PATHITEM(Employee[Employee Path], 1, STRING)
এখানে:
- Employee Path একটি স্ট্রিং তৈরি করবে যেখানে EmployeeID এবং ManagerID এর মধ্যে সম্পর্কের path থাকবে।
- Manager Level 1 প্রথম স্তরের Manager বা parent বের করবে।
PATH এবং PATHITEM এর সুবিধা
- Parent-Child Hierarchies তৈরি করা: আপনি যখন parent-child relationships পরিচালনা করতে চান, তখন PATH এবং PATHITEM ফাংশন ব্যবহার করে সহজে hierarchies তৈরি করতে পারেন।
- Dynamic Hierarchical Data Visualization: এই ফাংশনগুলির মাধ্যমে ডায়নামিক ডেটা visualization করা সহজ হয়, যেমন একটি ড্যাশবোর্ডে কর্মচারীদের পারফরম্যান্স এবং তাদের ম্যানেজারের তথ্য।
- Level-wise Data Retrieval: আপনি PATHITEM ব্যবহার করে যেকোনো স্তরের parent-child সম্পর্ক বের করতে পারেন, যেমন ১ম স্তর, ২য় স্তর ইত্যাদি।
সারাংশ
PATH এবং PATHITEM ফাংশনগুলি Parent-Child relationships পরিচালনা করতে ব্যবহৃত হয়, যা hierarchical structures তৈরি করার জন্য অত্যন্ত গুরুত্বপূর্ণ। PATH ফাংশনটি একটি parent-child relationship তৈরি করে এবং PATHITEM ফাংশনটি সেই relationship এর নির্দিষ্ট স্তরের মান বের করে। এই ফাংশনগুলির মাধ্যমে আপনি Power BI বা Excel-এ parent-child hierarchies তৈরি করতে পারেন, যা dynamic reporting এবং data visualization করতে সাহায্য করে।
Read more